Resource Priorities and Preemption

Priorities for resource requests may be assigned through a GET, JOINTLY Get, or USE statement in operation logic, downtime logic, or move logic (or the subroutines called from these logics). Priorities for resource downtimes are assigned in the Priority field of the Clock and Usage downtime edit tables. The following examples illustrate these points.

Process Table

Entity

Location

Operation (min)

EntA

Loc1

Use Res 1,200 For N(3,.1)

Routing Table

Blk

Output

Destination

Rule

Move Logic

1

EntA

Loc2

First 1

MOVE FOR 5

 

When an entity using a resource is preempted by either a downtime or another entity, any processing time for the preempted entity due to a WAIT or USE statement is interrupted until the preempting entity or downtime releases the resource. If an entity is using other resources in addition to the one preempted, the other resources remain in possession of the entity.

In the case of a resource downtime preempting another resource downtime, any remaining time delay, as well as any other downtime logic remaining to be processed by the preempted downtime, is immediately discontinued without resuming and the preempting downtime takes over.

Please note

Resource priorities and preemption notes:

1. If a resource is transporting an entity, it cannot be preempted by another entity or by a downtime until it drops off the current entity at the destination location. Therefore, the resource will deliver the current entity and then immediately come under control of the preempting entity or downtime.

2. If a resource is moving but does not possess an entity, the resource can be preempted by a downtime or entity. The resource will stop at the next node in the path network and travel to the downtime node after which the resource will go down.